home *** CD-ROM | disk | FTP | other *** search
/ Belgian Amiga Club - ADF Collection / BS1 part 05.zip / BS1 part 5 / ANC_UTULITYS_16.adf / arclist / asm1.arc / SprMov.S < prev    next >
Text File  |  1988-09-21  |  2KB  |  116 lines

  1. start:
  2. lea    $dff000,a0
  3. move.w    #$1200,$100(a0)
  4. move.w    #$0000,$108(a0)
  5. move.w    #$0000,$102(a0)
  6. move.w    #$0024,$104(a0)
  7. move.w    #$0038,$092(a0)
  8. move.w    #$00d0,$094(a0)
  9. move.w    #$2c81,$08e(a0)
  10. move.w    #$f4c1,$090(a0)
  11. move.w    #$0008,$180(a0)
  12. move.w    #$0000,$182(a0)
  13. move.w    #$0ff0,$1a2(a0)
  14. move.w    #$00ff,$1a4(a0)
  15. move.w    #$0f0f,$1a6(a0)
  16. move.l    #$40000,a3
  17. move.l    #$41000,a4
  18. lea    sprite,a2
  19. move.l    #$75000,a1
  20. bsr    sprloop
  21. bsr    clr
  22. lo:
  23. bsr    vloop
  24. move.b    d0,(a3)+
  25. move.b    d1,(a4)+
  26. cmp.l    #$00040fff,a3
  27. bne.s    lo
  28. rts
  29.  
  30. sprloop:
  31. move.l    (a2)+,(a1)+
  32. bne.s    sprloop
  33. rts
  34.  
  35. clr:
  36. move.l    #$40000,a1
  37. move.w    #2000,d0
  38. floop:
  39. move.l    #-1,(a1)+
  40. subq.w    #1,d0
  41. bne.s    floop
  42. move.w    #$03a0,$dff096
  43. move.l    #copperl,$dff080
  44. move.w    #$ffff,$dff088
  45. move.w    #$83a0,$dff096
  46. rts
  47.  
  48. vloop:
  49. move.w    $dff01e,d6
  50. and.w    #$0010,d6
  51. beq.s    vloop
  52. move.w    #$0010,$dff09c
  53. move.l    #$75000,a5
  54. move.b    $dff00a,d0
  55. move.b    $dff00b,d1
  56. sub.b    d0,d2
  57. sub.b    d1,d3
  58. bmi.s    neg
  59. btst    #0,d3
  60. beq.s    aa
  61. btst    #0,3(a5)
  62. beq.s    cc
  63. bra.s    ee
  64. cc:
  65. addq.b    #2,d3
  66. ee:
  67. eor.b    #$01,3(a5)
  68. aa:
  69. lsr.b    #1,d3
  70. sub.b    d3,1(a5)
  71. bra.s    loop1
  72. neg:
  73. move.b    #$00,d5
  74. sub.b    d3,d5
  75. btst    #0,d5
  76. beq.s    bb
  77. btst    #0,3(a5)
  78. beq.s    dd
  79. addq.b    #$1,d5
  80. dd:
  81. eor.b    #$01,3(a5)
  82. bb:
  83. lsr.b    #1,d5
  84. add.b    d5,1(a5)
  85. bra.s    loop1
  86. loop1:
  87. move.b    d0,d4
  88. move.b    d4,(a5)
  89. move.b    (a5),d4
  90. add.b    #6,d4
  91. move.b    d4,2(a5)
  92. clr.w    d3
  93. move.b    d0,d2
  94. move.b    d1,d3
  95. rts
  96.  
  97. copperl:
  98. dc.w    $00e0,$0004,$00e2,$0000
  99. dc.w    $0100,$1200,$008e,$2c81
  100. dc.w    $0090,$f4c1,$0092,$0038
  101. dc.w    $0094,$00d0,$0120,$0007
  102. dc.w    $0122,$5000
  103. dc.w    $ff01,$ff00
  104. dc.w    $009c,$8010
  105. dc.w    $ffff,$fffe
  106.  
  107. sprite:
  108. dc.w    $6d60,$7200
  109. dc.w    $0990,$07e0
  110. dc.w    $13c8,$0ff0
  111. dc.w    $23c4,$1ff8
  112. dc.w     $13c8,$0ff0
  113. dc.w    $0990,$07e0
  114. dc.w    $0000,$0000
  115.  
  116.